Skip to content

automative script to run TDDFT-ris calculation#4

Open
John-zzh wants to merge 2 commits intoORCAQuantumChemistry:mainfrom
John-zzh:main
Open

automative script to run TDDFT-ris calculation#4
John-zzh wants to merge 2 commits intoORCAQuantumChemistry:mainfrom
John-zzh:main

Conversation

@John-zzh
Copy link

@John-zzh John-zzh commented Aug 7, 2024

Usage: put the "ris.bas" or "ris+p.bas" file in the working directory, and use this script to run TDDFT-ris calculation.

The SCF part is same any usual SCF calculations. In the TD part, the script uses the user-define minimal JK fitting basis , "ris.bas", and turned off the XC kernel. I would not expect TDDFT-ris has too much speedup compared with RIJCOSX in ORCA, becasue COSX is N^3 and ris (RIJK) is N^4. I only observed a factor of 4 speedup in a 38 atoms system with def2-TZVP basis.

However, TDDFT-ris (and its variant, rid) was originally developed as the initial guess and preconditioner to help Davidson algorithm in TDDFT converge faster. There are many tricks to further speedup the TDDFT-ris itself, such as truncating the high energy obital pairs in the exchange term (not the Coulomb term), so that the initial guess and preconditioner is cheap enough to really help reduce the overall TDDFT cost.

Reference,

  1. Zhou, Zehao, and Shane M. Parker. "Converging Time-Dependent Density Functional Theory Calculations in Five Iterations with Minimal Auxiliary Preconditioning." Journal of Chemical Theory and Computation (2024).
  2. Zhou, Zehao, Fabio Della Sala, and Shane M. Parker. "Minimal auxiliary basis set approach for the electronic excitation spectra of organic molecules." The Journal of Physical Chemistry Letters 14, no. 7 (2023): 1968-1976.
  3. Zhou, Zehao, and Shane M. Parker. "Accelerating molecular property calculations with semiempirical preconditioning." The Journal of Chemical Physics 155, no. 20 (2021).

@dgliakos
Copy link
Contributor

dgliakos commented Mar 4, 2025

Hi Join-zzh,

your script is really nice! I think it would be great for the script library! I just have a few comments that I think should happen before we add it.

  1. This is just a personal opinion so it is up to you, I think that it would be great to have some comments inside the compound.inp file so that it would be easier for the user to use it.
  2. in file get_ris_bas.py you have some comments that are in Chinese, this would be better to be in English
  3. in file compound.inp in line 20 you have a minor typo (geometry instead of geometry)
  4. I think that in file compound inp it would be better to include some variables for some basis ingredients like mutliplicy, maybe functional, ... etc. so that it would be easier for the user to make adjustments.

Dimitris

@John-zzh
Copy link
Author

John-zzh commented Mar 5, 2025

Hi Dimitris, thanks for detailed checking!
I put more comments and instructions now. Except 4, I didn't include variables because I don't yet know how to use the best of Compound script :-) I though users just revise funcitonal/mutliplicy inside the compound script, that what I did when I use [iterativeOptimization.cmp] LOL.

BTW, in ORCA, I think it's hard to make TDDFT-ris significantly faster than RIJCOSX , because the MO orbital truncation in the exchange ERI are necessary to relax the RIJK N^4 scaling pain.
That's what I did in my stand alone code, https://github.com/John-zzh/pyscf_TDDFT_ris/blob/main/pyscf_TDDFT_ris/TDDFT_ris_Ktrunc.py,
K terms includes much less MOs than J terms at the every begining.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants